//
//  LQRequestApi.h
//  BaseProject
//
//  Created by 喻飞 on 15/5/21.
//  Copyright (c) 2015年 yuf. All rights reserved.
//

#import <Foundation/Foundation.h>
#import  "MKNetworkEngine.h"
#import "CJSONDeserializer.h"
typedef enum
{
    SX_kADBannerTag            ,//001、首页广告
    SX_HomeRecommdProduct      ,//002、首页推荐产品
    SX_QueryVerificationCodeDataTag     ,//003、注册获取验证码
    SX_SubmitRegisterDataTag     ,//04  注册
    SX_SubmitLoginDataTag     ,//05 登陆
    SX_Score_ChangePresentListTag,//06 积分换礼列表
    SX_searchFruitList,//07 点菜
    SX_GetGoodsCategory,//08 所有分类
    SX_GetRecommentGoods,//08 所有分类
    SX_GetGoodsList,//09 获取商品列表
    SX_fruitDetailTag,//10 商品详情
    SX_SX_queryVerConfigurationTag,//11 客户端版本
    SX_PostFeedbackInfoDataTag        ,//12 提交反馈信息
    SX_QueryUserInfoDetailDataTag        ,//13 获取我的信息
    SX_EditUserInfoDetailDataTag        ,//14 提交用户资料修改
    SX_EditUserInfoChangepassword ,     //15 修改密码
    SX_EditUserInfoIndentList,          //16订单列表
    SX_EditUserInfoSuggest          ,//评价
    SX_SX_queryCityAreaListTag      ,//16 查询区域
    SX_SX_AddBasketAdressTag      ,//17 新增收货地址
    SX_SX_QueryBasketAdressTag      ,//18 得到收货地址
    SX_SX_CarCreateOrderTag      ,//19 购物车生成订单
    SX_SX_logoutTag      ,//20 退出登录
    SX_SX_queryScoreByUserIdTag      ,//21 查询我的积分
    SX_SX_myScoreTag      ,//22 查询我的积分列表
    SX_SX_createPackFruitTag      ,//23 套餐产品立即购买生成订单
    SX_SX_pinjiaShaidanTag      ,//24 评价晒单
    SX_SX_searchFruitPinjiaListTag      ,//25产品评价列表
    SX_SX_getOrderInfoDetailTag      ,//26订单详情SX_searchBothFruitList
    SX_SX_searchBothFruitListTag      ,//27 大家都在搜的产品
    SX_resetPasswordDataTag     ,//28  重置密码
    SX_getBackPhoneCodeDataTag     ,//29、注册获取验证码--忘记密码
    SX_modifyOrderStateDataTag     ,//30、修改订单状态(确认收货、待支付取消订单、交易成功删除订单)
    SX_SX_searchFruitPinjiaListDataTag     ,//31、根据菜品id查询菜品所有的评价晒单(分页查询) 除订单)
    SX_SX_myPinjiaShaidanDataTag     ,//32、查询我的评价(晒单)的产品
    SX_SX_searchBuyConfigDataTag     ,//33、获取支付配置信息
    SX_SX_payOrderStateDataTag     ,//34、订单支付
    SX_SX_PutInShopCar    ,//35、加入购物车
    SX_SX_ShoppingCarList    ,//36、购物车列表
    SX_SX_AddressList    ,//37、地址列表
    SX_SX_AddAddress    ,//38  增加地址
    SX_SX_ChangeAddress    ,//39  修改地址
    SX_QueryMallLoveGoodsDataTag,//40,猜你喜欢
    SX_SX_SetDefaultAddress    ,//41  设置默认地址地址
     SX_SX_GetDefaultAddress    ,//42  查询默认地址地址
    SX_AddGoodsCollectInfoTag   ,//43  收藏
    SX_QueryGoodsUpProperty     ,//44  商品规格
    SX_QueryGoodsUpPropertyDetail     ,//45  商品规格详情
    SX_QueryCartProductTotalNum     ,//46  购物袋数量
    SX_UpdateCartProductNumber     ,//47  购物袋修改商品数量
    SX_UpdateCartProductPorperty     ,//48  购物袋修改商品规格
    SX_saveAppProductScanTag         ,//49  会员浏览商品
    SX_SX_appOrderList         ,//50  订单列表
     SX_SX_deleteCartProductPorperty         ,//51  删除购物车商品
      SX_SX_queryGoodsCollectInfo         ,//52  收藏商品列表
    SX_SX_queryGoodsIsCollect         ,//53  查询是否收藏
    SX_SX_queryStoreCollectInfo        ,//54  获取店铺收藏
    SX_SX_queryStoreIsCollect        ,//55  获取是否收藏店铺
  SX_SX_queryMallStoreDetailInfo       ,//56  获取店铺信息
    SX_SX_queryMallStoreCategoryInfo       ,//57  获取店铺分类信息
    SX_SX_queryGoodsCommentData       ,//58  获取商品评论列表信息
    SX_SX_queryMallGoodsRelative       ,//59  获取品牌列表信息
    SX_SX_deleteMallShippingAddress       ,//60删除收货地址
     SX_SX_queryPersonalData       ,//61个人信息
    SX_SX_saveGoodsOrderComment       ,//62提交订单评价
     SX_SX_updatePeronalData       ,//63修改个人资料
    SX_SX_updateModifyPassword       ,//64修改密码
    SX_SX_queryShopRanking       ,//65修改密码
     SX_SX_queryShopTypes       ,//66店铺分类
    SX_SX_exitLogin      ,//67退出登录
    SX_SX_saveOrderDetail      ,//68订单详情
    SX_QueryMallBrandDataDataTag,//69品牌热卖
    SX_SX_queryBrowsingHistory      ,//69我的足迹
    SX_SX_deleteBrowsingHistory      ,//70删除我的足迹
    SX_SX_queryNotificationMessage     ,//71查询消息中心数量
     SX_SX_queryNotificationMessageAll     ,//72查询消息数据
      SX_SX_insertAppMallFeedback     ,//73意见反馈
    SX_SX_queryfincationCount     ,//74消息中心总数
    SX_SX_queryAppGoodsHotkeyword    ,//75热门搜索
    SX_queryMallTwoGoodsCategoryTag  ,//76购物所有二级分类、
    SX_SX_queryMypintdesc  ,//77积分排行
    SX_SX_queryPersonCount ,//78个人积分排行
    SX_SX_queryAppIntegralDetail ,//79积分明细
    SX_SX_queryMypoits ,//80个人总积分
    SX_SX_judgeOrderStatus ,//81取消订单
    SX_SX_queryAppToEvaluate ,//82订单待评价
    SX_queryAppUsingHelpTag  ,//83常见问题列表
    SX_querySysWebsiteConfigTag,//84客服热线
    SX_queryMallStoreCategoryInfoTag,//85店铺内分类
    SX_updatefincationTag          ,//86修改消息为已读
    SX_updateOrderStatusTag        ,//87修改订单状态
    SX_payOrderTag                 ,//88订单支付
    SX_SX_queryAppactivity                 ,//89我的 进行中活动
    SX_SX_queryAppIntegralMall                 ,//90积分商城列表
    SX_SX_queryContext                 ,//91积分兑换商品详情
    SX_SX_queryDesc                 ,//92查询店铺优惠券
    SX_SX_queryStoreBanner                 ,//93店铺banner
    SX_SX_queryLineShop                 ,//94美食列表
    SX_SX_saveUserConpon                 ,//95领取优惠券
    SX_SX_queryCoponByStateId                 ,//96优惠券列表
     SX_SX_querySpendingSys                 ,//97积分抵扣额度
     SX_SX_queryStoreOffline                 ,//98店铺促销活动
     SX_SX_querySerivceNameByGoodsId                 ,//99查询商品服务
    SX_queryGoodsDetailsWebTag                     ,//100查询商品详情
    SX_queryAppPopularGroupPurchaseTag             ,//101热门团购
    SX_SX_queryAppBuyHome             ,//102团购首页列表
    SX_SX_queryMallGrouponCategory             ,//103团购分类
    SX_SX_queryGrouponPackDetype             ,//104团购套餐详情
    SX_SX_appSavaGrouponOrder             ,//105团购立即购买
    SX_SX_queryGrouponStoreInfo             ,//106团购详情
    SX_SX_queryAppMallGrouponComment             ,//107团购评论列表
    SX_SX_queryAppBuyNotes             ,//108团购购买须知
    SX_SX_queryAppPurchaseOrder             ,//109团购订单列表
    SX_SX_appCancelGrouponOrder             ,//110团购取消未支付订单
    SX_SX_queryVoucher             ,//111代金券列表
    SX_SX_queryAppGroupBuyingRules             ,//112查询是否随时退
    SX_SX_queryAppMallGrouponOrder             ,//113团购订单详情
    SX_SX_queryAppBusinessDetailsInfo             ,//112美食店家详情
    SX_SX_queryFoodsVoucher             ,//113美食店家代金券
    SX_SX_queryAppMallGrouponCommentByStoreId             ,//114美食店家评论列表
    SX_queryAppMallStoreGrouponTag             ,//114娱乐商家列表
    SX_SX_registerCodeUpdate             ,//115找回密码获取验证吗
    SX_SX_updatePwd            ,//116找回密码
    SX_SX_insertComment            ,//117团购订单评价
    SX_SX_queryGrouponProject            ,//118美食团购列表
    SX_SX_countOrderState           ,//119个人中心各状态订单个数
    SX_SX_museCertification           ,//120提交实名认证
    SX_queryAppVoucherCountTag      ,//121代金券优惠券数量
    SX_getAlipayInfoTag             ,//122支付宝配置信息
    SX_getWxpayInfoTag              ,//123微信配置信息
    SX_SX_hasPayPwd      ,//122查询用户是否已设置支付密码
    SX_SX_getPayPwdCode      ,//123设置修改支付密码获取验证码
    SX_SX_updatePayPwd      ,//124设置修改支付密码
    SX_SX_getMallEpurseList      ,//125查询充值有礼列表
    SX_SX_saveMemberEpurseOrder      ,//126生成充值订单
    SX_SX_getEpurse      ,//127查询账户余额
    SX_SX_changePayPwd      ,//128修改支付密码
    SX_SX_payOrderByEpurse      ,//129余额支付
    SX_SX_getAlipayInfo      ,//130获取支付宝配置信息
    SX_SX_getWxpayInfo      ,//131获取微信配置信息
    SX_SX_appAddMarketDemand      ,//132发布供应
    SX_SX_appAddMarketSupply      ,//133发布求购
    SX_SX_queryMallMarketSupply      ,//134供应列表
    SX_SX_queryMallMarketDemand     ,//135求购列表
    SX_SX_queryMallMarketSupplyInfo     ,//136供应详情
    SX_SX_queryMallMarketDemandInfo     ,//137求购详情
    SX_SX_queryAppGroupImages     ,//138团购广告
    SX_SX_getMemberEpurse        ,//139查询用户可用的金币和银币
    SX_SX_queryMemberEpurseDetail  ,//140金银币明细
    SX_SX_queryMemberEpurseFlow   ,//141账单记录
    SX_SX_depositMemberEpurse          ,//142正常充值
    SX_SX_queryMallEpurseList           ,//143活动充值
    SX_SX_queryMallEpurseParkList           ,//144停车充值
    SX_SX_queryShopRankingMap           ,//145地图坐标搜索
    SX_SX_queryStoreNames           ,//146获取地图店铺名称
    SX_SX_getHandyServiceList           ,//147便民服务

} LQRequestType;

#pragma  mark =============================================
@protocol LQRequestApiDelegate ;

@protocol LQRequestApiDelegate <NSObject>


@optional

//以数组的方式呈现
- (void)fetchDatabaseFinishedFromCache:(NSMutableDictionary*)database withTag:(NSInteger)tag;

- (void)fetchDatabaseFinished:(NSMutableDictionary*)database withTag:(NSInteger )tag;

- (void)fetchDatabaseFailed:(NSError *)error message:(NSString *)message;


@end

@interface LQRequestApi : NSObject

@property (nonatomic) BOOL isQueueRun;

@property (strong, nonatomic) NSMutableDictionary*  userInfo;   //传入的信息字典
@property (strong, nonatomic) NSDictionary*         dictionary; //返回的查询结果
@property (strong, nonatomic) NSError*              error;      //错误信息

@property (weak, nonatomic) id<LQRequestApiDelegate> delegate;

@property (strong, nonatomic) MKNetworkEngine         *  engine; //
@property (nonatomic ,strong) NSString *requestStatus;
@property (nonatomic ,strong) id dataReceiver;
@property   SEL finishSelector;
@property   SEL failSelSelector;


+(MKNetworkEngine *)shareEngine:(NSString *)hostName;
+(MKNetworkEngine *)shareEngine;
+(LQRequestApi *)sharedInstance;


/*   所有接口 调用此方法
 *   dic 传递参数
 *   interface_Path 接口地址
 *   type  POST  GET
 tag 标记
 */
-(void)requestOperationWithDic:(NSMutableDictionary  *)dic  withPath:(NSString *)interface_Path  withHttpType:(NSString *)type  withTag:(NSInteger )tag;
@end
